package com.sanyou.service;

/**
 * 提供数据访问权限检查相关的服务
 */
public interface DataAuthorityService {
    /**
     * 判断目标用户是否具有id为equipId的设备数据访问权限
     * @param userId
     * @param equipId
     * @return
     */
    boolean checkAuthorityOfEquipmentById(String userId, String equipId);

    /**
     * 判断目标用户是否具有设备编号为equipNo的设备数据访问权限
     * @param userId
     * @param equipNo
     * @return
     */
    boolean checkAuthorityOfEquipmentByNo(String userId, String equipNo);

    /**
     * 判断目标用户是否具有id为subFactoryId的车间数据访问权限
     * @param userId
     * @param subFactoryId
     * @return
     */
    boolean checkAuthorityOfSubFactory(String userId, String subFactoryId);

    /**
     * 判断目标用户是否具有id为factoryId的工厂数据访问权限
     * 如果用户拥有该工厂下一个及以上车间的数据访问权限，则认为用户对该工厂具有数据访问权限
     * @param userId
     * @param factoryId
     * @return
     */
    boolean checkAuthorityOfFactory(String userId, String factoryId);
}
